A cross connect system may be used to connect any one of a plurality of source or ingress ports to any one of a plurality of destination or egress ports. Data received from a source device coupled to the selected source/ingress port may thus be connected to the selected destination/egress port for transmission to a destination device. Optical cross connects, for example, may be used to reconfigure optical networks dynamically, for example, to manage traffic on the networks. Electrical-switching-based optical cross connects convert optical data signals to electrical data signals, perform electrical switching of the data signals between the ports, and then convert the electrical data signals back to optical data signals.
When electrical data signals are received, clock signals are recovered from the data signals and the recovered clock signals are used to clock the recovered data into the ingress ports and to clock data out of the egress ports. To use the same clock rate to clock the data out of the egress ports, e.g., to match input and output clock rates, the recovered clock signals may be multiplexed with the data being connected to the selected egress ports. Thus, every egress port is configured to be clocked by all of the ingress ports, and every ingress clock needs to be compensated for by every egress port. When a large number of ingress and egress ports are being cross connected, collapsing the multiple different clock domains is challenging, particularly in an FPGA implementation with limited clock resources. A 400G cross connect system with 10G resolution, for example, involves collapsing 40 different clock domains.